package net.shopxx.dao;

import java.util.Date;

import net.shopxx.entity.AccountsItem;
import net.shopxx.pager.AccountsPageable;
import net.shopxx.pager.Page;

/**
 * Dao - 账务处理DAO
 * 
 * @author frankie
 * @version 3.0
 */
public interface AccountsDao extends BaseDao<AccountsItem, Long> {

	/**
	 * 通过用户名获取订单数量
	 * @param userName
	 * @param beginDate
	 * @param endDate
	 * @return 订单数量
	 */
	public Long countByTbUserName(String userName, Date beginDate, Date endDate);

	/**
	 * 通过淘宝订单号查询订单数量
	 * @param orderId
	 * @return
	 */
	public Long countByOrderTbId(Long orderId);

	/**
	 * 获取统计信息
	 * 
	 * @param pageable
	 * @return 统计信息
	 */
	public Page<AccountsItem> findStatsPage(AccountsPageable pageable);


	/**
	 * 获取统计总金额
	 * 
	 * @param pageable
	 * @return 统计总金额
	 */
	public Float findStatsSum(AccountsPageable pageable);


	/**
	 * 获取统计总比数
	 * 
	 * @param pageable
	 * @return 统计总比数
	 */
	public Long findStatsCount(AccountsPageable pageable);

}
